home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / share / bug / xserver-xorg-core / script
Encoding:
Text File  |  2009-04-08  |  3.3 KB  |  123 lines

  1. #!/bin/sh
  2.  
  3. # $Id$
  4.  
  5. PATH="/sbin:$PATH"
  6. CONFIG_DIR=/etc/X11
  7. SERVER_SYMLINK="$CONFIG_DIR/X"
  8. XORGCONFIG="$CONFIG_DIR/xorg.conf"
  9. CONFIG_AUX_DIR=/var/lib/x11
  10. SERVER_SYMLINK_CHECKSUM="$CONFIG_AUX_DIR/${SERVER_SYMLINK##*/}.md5sum"
  11. SERVER_SYMLINK_ROSTER="$CONFIG_AUX_DIR/${SERVER_SYMLINK##*/}.roster"
  12. XORGCONFIG_CHECKSUM="$CONFIG_AUX_DIR/${XORGCONFIG##*/}.md5sum"
  13. XORGCONFIG_ROSTER="$CONFIG_AUX_DIR/${XORGCONFIG##*/}.roster"
  14.  
  15. exec >&3
  16.  
  17. if [ -e "$SERVER_SYMLINK_ROSTER" ]; then
  18.     printf "Contents of $SERVER_SYMLINK_ROSTER:\n"
  19.     cat "$SERVER_SYMLINK_ROSTER"
  20. else
  21.     printf "$SERVER_SYMLINK_ROSTER does not exist.\n"
  22. fi
  23.  
  24. printf "\n"
  25.  
  26. if [ -e "$SERVER_SYMLINK" ]; then
  27.     if [ -e "$SERVER_SYMLINK_CHECKSUM" ]; then
  28.         if [ "$(readlink "$SERVER_SYMLINK" | md5sum)" = \
  29.              "$(cat "$SERVER_SYMLINK_CHECKSUM")" ]; then
  30.             printf "%s target unchanged from checksum in %s.\n" \
  31.               "$SERVER_SYMLINK" "$SERVER_SYMLINK_CHECKSUM"
  32.         else
  33.             printf "%s target does not match checksum in %s.\n" \
  34.               "$SERVER_SYMLINK" "$SERVER_SYMLINK_CHECKSUM"
  35.         fi
  36.     else
  37.         printf "$SERVER_SYMLINK_CHECKSUM does not exist.\n"
  38.     fi
  39.     printf "\n"
  40.     printf "X server symlink status:\n"
  41.     ls -dl "$SERVER_SYMLINK"
  42.     ls -dl "$(readlink "$SERVER_SYMLINK")"
  43. else
  44.     printf "$SERVER_SYMLINK does not exist.\n"
  45. fi
  46.  
  47. if ! [ -L "$SERVER_SYMLINK" ]; then
  48.     printf "$SERVER_SYMLINK is not a symlink.\n"
  49. fi
  50.  
  51. if ! [ -x "$SERVER_SYMLINK" ]; then
  52.     printf "$SERVER_SYMLINK is not executable.\n"
  53. fi
  54.  
  55. printf "\n"
  56.  
  57. if [ -e "$XORGCONFIG_ROSTER" ]; then
  58.     printf "Contents of $XORGCONFIG_ROSTER:\n"
  59.     cat "$XORGCONFIG_ROSTER"
  60. else
  61.     printf "$XORGCONFIG_ROSTER does not exist.\n"
  62. fi
  63.  
  64. printf "\n"
  65.  
  66. if which lspci > /dev/null 2>&1; then
  67.     printf "VGA-compatible devices on PCI bus:\n"
  68.     LC_ALL=C lspci | grep 'VGA compatible controller:'
  69.     LC_ALL=C lspci -n | grep 'Class 0300:'
  70. else
  71.     printf "The lspci command was not found; not including PCI data.\n"
  72. fi
  73.  
  74. printf "\n"
  75.  
  76. if [ -e "$XORGCONFIG" ]; then
  77.     if [ -e "$XORGCONFIG_CHECKSUM" ]; then
  78.         if [ "$(md5sum "$XORGCONFIG")" = "$(cat "$XORGCONFIG_CHECKSUM")" ]; then
  79.             printf "%s unchanged from checksum in %s.\n" "$XORGCONFIG" \
  80.               "$XORGCONFIG_CHECKSUM"
  81.         else
  82.             printf "%s does not match checksum in %s.\n" "$XORGCONFIG" \
  83.               "$XORGCONFIG_CHECKSUM"
  84.         fi
  85.     else
  86.         printf "$XORGCONFIG_CHECKSUM does not exist.\n"
  87.     fi
  88.     printf "\n"
  89.     printf "Xorg X server configuration file status:\n"
  90.     ls -dl "$XORGCONFIG"
  91.     printf "\n"
  92.     printf "Contents of $XORGCONFIG:\n"
  93.     iconv -c -t ascii "$XORGCONFIG"
  94.     printf "\n"
  95. else
  96.     printf "$XORGCONFIG does not exist.\n"
  97. fi
  98.  
  99. printf "\n"
  100.  
  101. XORG_LOGS=$(ls -dt /var/log/Xorg.*.log 2>/dev/null)
  102.  
  103. if [ -n "$XORG_LOGS" ]; then
  104.     printf "Xorg X server log files on system:\n"
  105.     ls -dlrt /var/log/Xorg.*.log 2>/dev/null
  106.     printf "\n"
  107.     for LOG in $XORG_LOGS; do
  108.         if [ -f "$LOG" ]; then
  109.             printf "Contents of most recent Xorg X server log file\n"
  110.             printf "%s:\n" "$LOG"
  111.             cat "$LOG"
  112.             # the log files are large; only show the most recent
  113.             break
  114.         fi
  115.     done
  116. else
  117.     printf "No Xorg X server log files found.\n"
  118. fi
  119.  
  120. printf "\n"
  121.  
  122. # vim:set ai et sts=4 sw=4 tw=0:
  123.